// 在需要获取数据的地方，调用相应的接口请求函数，如 reqLogin、reqCategorys 等。

import ajax from "./ajax";
// import { message } from 'antd'
// import jsonp from "jsonp";

const BASE = '/api'

export const reqLogin = (username, password) => ajax(BASE + '/login', { username, password }, 'POST')

export const reqAdduser = (user) => ajax(BASE + '/manage/user/add', user, 'POST')

// 获取一级/二级分类的列表
export const reqCategorys = (parentId) => ajax(BASE + '/manage/category/list', { parentId })

// 添加分类
export const reqAddCategory = (categoryName, parentId) => ajax(BASE + '/manage/category/add', { categoryName, parentId }, 'POST')

// 更新分类
export const reqUpdateCategory = ({ categoryId, categoryName }) => ajax(BASE + '/manage/category/update', { categoryId, categoryName }, 'POST')


// 获取商品分页列表
export const reqProducts = (pageNum, pageSize) => ajax(BASE + '/manage/product/list', { pageNum, pageSize })


// 根据分类 ID 获取一个分类
export const reqCategory = (categoryId) => ajax(BASE + '/manage/category/info', { categoryId })

/*
搜索商品分页列表 (根据商品名称/商品描述)
searchType: 搜索的类型, productName/productDesc
 */
export const reqSearchProducts = ({ pageNum, pageSize, searchName, searchType }) => ajax(BASE + '/manage/product/search', {
  pageNum,
  pageSize,  //表示搜索的关键词
  [searchType]: searchName,  //searchType是个变量，方括号 [] 把表达式包裹起来，表达式的结果会作为属性名。
})

// 添加/修改商品
export const reqAddOrUpdateProduct = (product) => ajax(BASE + '/manage/product/' + (product._id ? 'update' : 'add'), product, 'POST')

// 更新商品的状态(上架/下架)
export const reqUpdateProductStatus = (productId, status) => ajax(BASE + '/manage/product/updateStatus', { productId, status }, 'POST')

// 删除指定名称的图片
export const reqDeleteImg = (name) => ajax(BASE + '/manage/img/delete', { name }, 'POST')

// 获取所有角色的列表
export const reqRoles = () => ajax(BASE + '/manage/role/list')

// 添加角色
export const reqAddRole = (roleName) => ajax(BASE + '/manage/role/add', { roleName }, 'POST')

// 更新角色（给角色设置权限）
export const reqUpdateRole = (role) => ajax(BASE + '/manage/role/update', role, 'POST')




// /*
// json请求的接口请求函数
//  */
// export const reqWeather = (city) => {

//   return new Promise((resolve) => {
//     const url = `http://api.map.baidu.com/telematics/v3/weather?location=${city}&output=json&ak=3p49MVra6urFRGOT9s8UBWr2`
//     // 发送jsonp请求
//     jsonp(url, {}, (err, data) => {
//       console.log('jsonp()', err, data)
//       // 如果成功了
//       if (!err && data.status === 'success') {
//         // 取出需要的数据
//         const { dayPictureUrl, weather } = data.results[0].weather_data[0]
//         resolve({ dayPictureUrl, weather })
//       } else {
//         // 如果失败了
//         message.error('获取天气信息失败!')
//       }

//     })
//   })
// }